#ifndef __GDL_MACROS_H__
#define __GDL_MACROS_H__

#ifdef  __cplusplus
# define GDL_BEGIN_DECLS  extern "C" {
# define GDL_END_DECLS    }
#else
# define GDL_BEGIN_DECLS 
# define GDL_END_DECLS   
#endif

/* Provide definitions for some commonly used macros.
 *  Some of them are only provided if they haven't already
 *  been defined. It is assumed that if they are already
 *  defined then the current definition is correct.
 */
#ifndef NULL
#  ifdef __cplusplus
#    define NULL        (0L)
#  else /* !__cplusplus */
#    define NULL        ((void*) 0)
#  endif /* !__cplusplus */
#endif

#ifndef	FALSE
#define	FALSE	(0)
#endif

#ifndef	TRUE
#define	TRUE	(!FALSE)
#endif

#endif //end of __GDL_MACROS_H__ define
